package cn.wolfcode.crm.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 确定有几个字段:
 * 思路:
 * 1.日程安排要确定从哪一天开始,还要确定哪一天结束,所以需要两个Date类型的变量
 * 2.我们有必要知道要从哪一天开始的具体时间,和结束的那天的具体时间,所以又要两个Date对象来记录
 * 3.我们需要知道日程安排的标题title,和日程安排的内容,所以又需要两个变量
 * 4.我们可能需要记录输入日程安排的人是谁,还有输入日程安排的人的时间
 */
@Setter
@Getter
@ToString
public class CalendarPlan {
    private Long id;

    //开始日期
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date startDate;

    //开始时间
    @JsonFormat(pattern = "HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    //结束日期
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date endDate;

    //结束时间
    @JsonFormat(pattern = "HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    //标题
    private String title;

    //内容
    private String description;

    //输入人
    private Employee inputWho;

    //输入时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date inputWhen;
}
